package bancosys.tec.exception;

/**
 * A Business Exceptions meets the following criteria:<br/>
 * The program CAN NOT do anything to deal with the situation.<br/>
 * The end user CAN, and should be informed precisely about what he/she can do to and try again and eventually succeed.<br/>
 * Messages must ALWAYS be internationalized and be easily readable by the end user, it should only assume the user comprehends the system's
 * business.<br/>
 * One should catch BusinessException, wrap and rethrow to provide the user more information about the context the error occurred.<br/>
 * Programming errors and resource failures should NOT be thrown as business exceptions.
 * 
 * @author lundberg
 */
public class BusinessException extends AbstractRuntimeException {

    /**
     * Constructor
     * 
     * @param messageHolder messageHolder
     * @param cause cause
     */
    public BusinessException(LocalizedMessageHolder messageHolder, Throwable cause) {
        super(messageHolder, cause);
    }

    /**
     * Constructor
     * 
     * @param messageHolder messageHolder
     */
    public BusinessException(LocalizedMessageHolder messageHolder) {
        super(messageHolder);
    }
}
